什麼是域名?
www.example.com
。就是讓我們好記好辨別,像ip這種數字對於我們人類來說比較不好記而且也沒辦法代表這個網站,比如說像www.google.com就很清楚的知道我要訪問的事google的網站,但實際上,網站是由IP地址來定位的。www.example.com
中的.com
**是頂級域名。頂級域名有好幾種類型,像是:
www.example.com
中的example
**是次級域名。這部分通常由企業、組織或個人註冊,用於標識其網站。www.example.com
中的www
**是子域名。子域名用於組織網站的各個部分。例如,blog.example.com可能用於托管網站的博客部分。什麼是DNS?
DNS (Domain Name System) 是一個將域名轉換為IP地址的系統。
有多間公司提供購買網域及DNS的服務,我目前使用的是go daddy。
關於他的使用及如何計價官網寫得這裡就不多說了。
這裡需要注意的是,要記得去設定DNS,go daddy有提供這個服務,可以去DNS的地方點選DNS紀錄,去設定對應的ip。
一般來說,SSL證書可以分為三個主要的等級:
根據證書提供商的指南進行申請。通常需要生成一個CSR (Certificate Signing Request) 文件並提交給證書提供商。
而實際上的過程其實可以安裝Let’s Encrypt套件
安裝Certbot
Certbot是Let's Encrypt推薦的客戶端軟件。在大多數的Linux發行版中,您可以使用包管理器安裝Certbot。
sudo apt-get update sudo apt-get install certbot
运行Certbot
sudo certbot --nginx
选择域名
在运行该命令后,Certbot会列出Nginx配置中的所有域名,并让您选择为哪些域名安装证书。
验证域名所有权
Certbot会自动进行域名所有权验证,通常是通过修改Nginx的配置来响应HTTP挑战,证明您拥有该域名。
安装和配置SSL证书
一旦验证成功,Certbot会自动获取SSL证书,并修改Nginx的配置文件以使用新证书。它还会设置HTTP到HTTPS的重定向。
以下是套件幫我自動做的設定
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/wade.monster/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/wade.monster/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
if ($host = wade.monster) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80;
server_name wade.monster www.wade.monster;
return 404; # managed by Certbot
主要就是說如果我今天沒有用https去訪問我這個網站他會自動幫我重定向回對方瀏覽器,並要求建立https連接。
部署HTTPS不僅能保護網站和用戶的資訊安全,還能提高網站的可信度和SEO排名。雖然過程可能稍有複雜,但對於任何較嚴謹的網站來說,都是值得的。